﻿/*
 * Created by SharpDevelop.
 * User: Miguel
 * Date: 08/10/2011
 * Time: 03:19 p.m.
 * 
 * To change this template use Tools | Options | Coding | Edit Standard Headers.
 */
using System;
using System.Collections.Generic;
using Business_Entity;
//using DAOFactory;

namespace Business_Logic
{
	/// <summary>
	/// Description of BLCliente.
	/// </summary>
	public class BLCliente
    {
        private static List<BECliente> clientes;

        public static void inicializar(){
        	clientes = new List<BECliente>();
        }
        public List<BECliente> populate(string consulta)
        {
            /*consulta a BD*/
            return null;
        }
        public bool insert(BECliente cliente)
        {
            return true;
        }
        public bool remove(BECliente cliente)
        {
            return true;
        }     
        

        public static BECliente getClienteById(int id)
        {
            foreach (BECliente cliente in clientes)
            {
                if (cliente.IdCliente == id)
                    return cliente;
            }
            return null;
        }
        
//        public static List<BECliente> findClientes()
//        {
//        	List<BECliente> lista = DAOFactory.DAOCliente.find();
//        	return lista;
//        }

		/*
		public static void insertarNuevoCliente(Business_Entity.BECliente cliente)
		{
			DAOFactory.DAOCliente.insert(cliente);
		}
		*/
		public int insertarNuevoCliente(BECliente beCliente){
			DAOFactory.DAOCliente daoCliente =  new DAOFactory.DAOCliente();
			return daoCliente.insertarNuevoCliente(beCliente);			
		}
		/*
		public int getNextIdCliente(){
			DAOFactory.DAOCliente daoCliente = new DAOFactory.DAOCliente();
			return daoCliente.getNextIdCliente();
		}
		*/
//		public List<BECliente> getListaClientes(BECliente beCliente){
//			DAOFactory.DAOCliente daoCliente =  new DAOFactory.DAOCliente();
//			return daoCliente.getListaClientes(beCliente);			
//		}
        	                                                          
		
		public List<BECliente> buscarListaClientes()
		{
			DAOFactory.DAOCliente daoCliente = new DAOFactory.DAOCliente();
			return daoCliente.buscarListaClientes();
		}
		
		public List<BECliente> buscarListaClientes(BECliente cliente)
		{
			DAOFactory.DAOCliente daoCliente = new DAOFactory.DAOCliente();
			return daoCliente.buscarListaClientes(cliente);
		}
		
		public int eliminarCliente(BECliente beCliente)
		{
			DAOFactory.DAOCliente daoCliente = new DAOFactory.DAOCliente();
			return daoCliente.eliminarCliente(beCliente);
		}		
				
		public int actualizarCliente(BECliente beCliente)
		{
			DAOFactory.DAOCliente daoCliente = new DAOFactory.DAOCliente();
			return daoCliente.actualizarCliente(beCliente);
		}
		
		public Boolean existeCliente(BECliente cliente)
		{
			DAOFactory.DAOCliente daoCliente = new DAOFactory.DAOCliente();
			return daoCliente.existeCliente(cliente);
		}
		
		public Boolean existePedidoVentaPendiente(BECliente cliente)
		{
			DAOFactory.DAOCliente daoCliente = new DAOFactory.DAOCliente();
			return daoCliente.existePedidoVentaPendiente(cliente);
		}
				
		public Boolean existeServiciosPendientesMascotas(BECliente cliente)
		{
			DAOFactory.DAOCliente daoCliente = new DAOFactory.DAOCliente();
			return daoCliente.existeServiciosPendientesMascotas(cliente);
		}
		
		public static int getIdClienteMaster(){
			DAOFactory.DAOMascota dao = new DAOFactory.DAOMascota();
			int idClienteMaster = dao.obtenerIDClienteNombre();
			return idClienteMaster;
		}
    }
}
